package org.dromara.business.domain.vo;

import org.dromara.business.domain.VideoDanmaku;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.mybatis.core.vo.BaseVo;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;



/**
 * 视频弹幕视图对象 t_video_danmaku
 *
 * @author Hao Tong Xue
 * @date 2025-04-21
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = VideoDanmaku.class)
public class VideoDanmakuVo extends BaseVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 弹幕 ID
     */
    @ExcelProperty(value = "弹幕 ID")
    private Long id;

    /**
     * 视频 ID
     */
    @ExcelProperty(value = "视频 ID")
    private Long videoId;

    /**
     * 弹幕内容
     */
    @ExcelProperty(value = "弹幕内容")
    private String content;

    /**
     * 弹幕颜色
     */
    @ExcelProperty(value = "弹幕颜色")
    private String color;

    /**
     * 弹幕出现时间点(秒)
     */
    @ExcelProperty(value = "弹幕出现时间点(秒)")
    private Integer videoTime;

    /**
     * 弹幕显示位置（从上至下，数字越大越往上）
     */
    @ExcelProperty(value = "弹幕显示位置", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "弹幕显示模式，top顶部居中，bottom底部居中，scroll滚动，默认为scroll")
    private String contentPosition;

    /**
     * 字体大小
     */
    @ExcelProperty(value = "点赞数")
    private Integer fontSize;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;


}
